---
title: ترقية تطبيقك اللامركزي إلى WalletConnect الإصدار 2
description: لقد تمت ترقية RainbowKit إلى الإصدار 2، ويمكنك تحضير تطبيقك اللامركزي في غضون 5 دقائق أو أقل
image: guide-walletconnect-v2.png
---

# الترقية إلى WalletConnect الإصدار 2

## حضر تطبيقك اللامركزي للترقية إلى الإصدار 2 في 5 دقائق أو أقل

سيتم إيقاف تشغيل بروتوكول WalletConnect الإصدار 1 في 28 يونيو 2023، ويدعمك RainbowKit لجعل الانتقال بسيطاً للغاية.

تم الآن دعم WalletConnect الإصدار 2 بشكل قياسي في RainbowKit، بدون تغيرات مفاجئة. فقط قم بالترقية وارجع إلى الدليل أدناه للحصول على تفاصيل إضافية.

#### فهم WalletConnect الإصدار 2

WalletConnect هو البروتوكول الذي يتيح للمستخدمين توصيل محافظهم المتنقلة مع تطبيقك اللامركزي، وهو قاعدة أساسية لـ RainbowKit. الإصدار الأخير من WalletConnect 2 يجلب عدداً من الترقيات الهامة لتحسين تجربة المحفظة والتطبيق.

مع الإصدار 2، يمكن للمستخدمين الآن الاتصال المتزامن بسلاسل متعددة، لذلك يمكنك نسيان المصافحة بالتبديل بين السلاسل. كما يقدم دعماً أوسع لمزيد من الشبكات، ومزايا تجعل تسجيل الدخول باستخدام Ethereum أسرع.

#### ترقية تطبيقك اللامركزي

إذا كنت قد اتبعت بالفعل أدلة الترقية لـ RainbowKit `0.12.x` و `1.0.x`، فأنت قد اقتربت بالفعل! فقط قم بالترقية إلى أحدث إصدار جزيئي وجربه.

قام RainbowKit بتمكين WalletConnect الإصدار 2 بشكل افتراضي مع `0.12.15` و `1.0.2`. نحن نواصل دعم `0.12.x` في حال لم يقم تطبيقك اللامركزي بالترقية إلى Wagmi الإصدار 1 وRainbowKit الإصدار 1 بعد.

**1. ترقية التبعيات**

```bash
npm i @rainbow-me/rainbowkit@^1.0.2 wagmi@^1.2
```

إذا كنت تستخدم إصدار من RainbowKit قبل `0.12.x` أو `1.0.x`، فقط اتبع [أدلة الترحيل](/docs/migration-guide) لتحديث خطواتك.

يوصى بأن تبدأ التطبيقات اللامركزية `0.12.x` في الترقية إلى Wagmi الإصدار 1، حيث سيتم تضمين تحسينات استقرار WalletConnect الإصدار 2 فقط في الإصدارات المستقبلية من Wagmi.

**2. تزويد projectId**

كل dApp يعتمد على WalletConnect يحتاج الآن للحصول على `projectId` من [WalletConnect Cloud](https://cloud.walletconnect.com/). هذا عمل مجاني تمامًا ولا يستغرق سوى بضع دقائق.

قم بتقديم `projectId` إلى `getDefaultWallets` وموصلات المحفظة الفردية لـ RainbowKit كما في الآتي:

```ts
const projectId = 'YOUR_PROJECT_ID';
const { wallets } = getDefaultWallets({
  appName: 'My RainbowKit App',
  projectId,
  chains,
});
const connectors = connectorsForWallets([
  ...wallets,
  {
    groupName: 'Other',
    wallets: [
      readyWallet({ projectId, chains }),
      trustWallet({ projectId, chains }),
      ledgerWallet({ projectId, chains }),
    ],
  },
]);
```

RainbowKit آمن من ناحية الأنواع وسيحذرك عندما يكون `projectId` مفقودًا. راجع أمثلتنا لرؤية الإصدار 2 في العمل:

- [إنشاء تطبيق React](https://codesandbox.io/p/sandbox/github/rainbow-me/rainbowkit/tree/main/examples/with-create-react-app)
- [Next.js](https://codesandbox.io/p/sandbox/github/rainbow-me/rainbowkit/tree/main/examples/with-next)
- [موجه تطبيق Next.js](https://codesandbox.io/p/sandbox/github/rainbow-me/rainbowkit/tree/main/examples/with-next-app)
- [ريمكس](https://codesandbox.io/p/sandbox/github/rainbow-me/rainbowkit/tree/main/examples/with-remix)
- [فيت](https://codesandbox.io/p/sandbox/github/rainbow-me/rainbowkit/tree/main/examples/with-vite)
- [React Router](https://codesandbox.io/p/sandbox/github/rainbow-me/rainbowkit/tree/main/examples/with-react-router)

ارجع إلى [الوثائق](https://www.rainbowkit.com/docs/custom-wallet-list#walletconnect) للحصول على خيارات إضافية مدعومة.
